package com.yxx.service;

import com.yxx.medicinecommon.result.PageResult;
import com.yxx.medicinepojo.dto.Medicine_CategoryDTO;
import com.yxx.medicinepojo.dto.Medicine_Category_PageQueryDTO;
import com.yxx.medicinepojo.entity.Medicine_Category;

import java.util.List;

/**
 * 分类管理
 * @author yuxiangxun
 * @date 2024/9/7
 * @apiNote
 */

public interface MedicineCategoryService {

    /**
     * 分页查询
     * @param medicineCategoryPageQueryDTO
     * @return
     */
    PageResult page(Medicine_Category_PageQueryDTO medicineCategoryPageQueryDTO);

    /**
     * 分类启用/禁用
     * @param status
     * @param id
     */
    void Category_Start_Disable(Integer status, Long id);

    /**
     * 修改分类信息
     * @param medicineCategoryDTO
     */
    void update_Category(Medicine_CategoryDTO medicineCategoryDTO);

    /**
     * 根据类型查询分类列表
     * @param type
     * @return
     */
    List<Medicine_Category> typeList(Integer type);

    /**
     * 新增分类
     * @param medicineCategoryDTO
     */
    void insert_Medicine_Category(Medicine_CategoryDTO medicineCategoryDTO);

    /**
     * 根据分类id删除分类
     * @param id
     */
    void delete_Medicine_Category_id(Long id);

    /**
     * 根据分类类型查询药品和组合药分类
     * @param type
     * @return
     */
    List<Medicine_Category> list(Integer type);
}
